#ifndef LIGHTCONTROLFORM_H
#define LIGHTCONTROLFORM_H

#include <QWidget>

namespace Ui {
class LightControlForm;
}

class LightControlForm : public QWidget
{
    Q_OBJECT

public:
    explicit LightControlForm(QWidget *parent = nullptr);
    ~LightControlForm();

private:
    Ui::LightControlForm *ui;

private slots:
    void updateSpinBox(int value);

    // 更新增益数据
    void updateLabelGain(int value);
    // 更新灰度系数数据
    void updateLabelGamma(int value);
    // 更新图像增益数据
    void updateLabelGainImage(int value);

    void updateSlider(double value);

    void on_pushButton_restoreDefaultGain_clicked();
    void on_pushButton_restoreDefaultGamma_clicked();
    void on_pushButton_restoreDefaultGainImage_clicked();
    void on_pushButton_restoreDefaults_clicked();
    // 是否隐藏显示
    void on_toolButton_contractExpand_clicked(bool checked);

    void on_radioButton_red_clicked();

    void on_radioButton_green_clicked();

    void on_radioButton_blue_clicked();

signals:
    // 当滑块值变化时发出的信号，用于同步更新LED值
    void sig_updateLedValue(int value);
    // 更新增益
    void sig_updateGain(int value);
    // 更新灰度系数
    void sig_updateGamma(int value);
    // 更新图像增益
    void sig_updateGainImage(int value);

protected:
    virtual void paintEvent(QPaintEvent*event) override;


};

#endif // LIGHTCONTROLFORM_H
